import axios from 'axios';

const service = axios.create({
	baseURL: process.env.NODE_ENV === 'production' ? '/api' : '/api',
	withCredentials: true,
	timeout: 20000,
	headers: {
		'Content-Type': 'multipart/form-data'
	}
})

// 添加请求拦截器
axios.interceptors.request.use(config => {
	// 从localStorage中获取token
	// let token = localStorage.getItem('token');
	// 如果有token, 就把token设置到请求头中Authorization字段中 
	// token && (config.headers.Authorization = token);
	return config;
}, error => {
	return Promise.reject(error);
});
// 添加响应拦截器
axios.interceptors.response.use(response => {
	// 当响应码是 2xx 的情况, 进入这里
	// debugger
	return response.data;
}, error => {
	// 当响应码不是 2xx 的情况, 进入这里
	// debugger
	return error
});

function post(url, params, headers) {
	return new Promise((resolve, reject) => {
		service.post(url, params, headers).then((res) => {
			resolve(res)
		}).catch((err) => {
			// debugger
			reject(err)
		})
	})
}
export function get(url, params, headers) {
	return new Promise((resolve, reject) => {
		service.get(url, {
			params,
			headers
		}).then(res => {
			resolve(res)
		}).catch(err => {
			reject(err)
		})
	})
}



axios().catch(err => {
	console.log(err)
})
export default {
	post,
	get
};
